Data packets received over the air link may be delivered from a medium access control (MAC) layer to an upper layer out-of-order. For example, hybrid automatic repeat request (HARQ) retransmissions, automatic repeat request (ARQ) retransmissions, different processing paths and time for different data packets of the same application due to different per MAC protocol data unit (PDU) operations, (e.g., with or without fragmentation or reassembly, etc.), may cause the data packets delivered to the upper layer out-of-order.
In accordance with the current IEEE 802.16m specifications, a MAC PDU includes a sequence number (SN) field in the data transport connections. However, the SN may be an unnecessary overhead since not every application requires MAC in-order delivery. Even with a SN in a MAC PDU, the MAC service data unit (SDU) in-order delivery may not be guaranteed. After the ARQ operation in a receive processing, de-multiplexing and reassembly functions are performed. MAC PDUs from multiple flows may be multiplexed into the same MAC PDU, and the de-multiplexing function de-multiplexes the MAC PDUs from different flows. MAC SDU fragments may be included in a MAC PDU, and the reassembly function reassembles the SDU fragments to the original MAC SDU. The de-multiplex and reassembly functionalities are either per MAC PDU or per MAC SDU operations. Such per MAC PDU or MAC SDU operations may have different paths or processing time for the MAC PDUs or MAC SDUs in the same connection, possibly resulting in an out-of-order delivery.